A computer system or platform may typically include a processor, chipset, memory, one or more input/output (I/O) devices, and other integrated components. Increasingly, computer platforms may comprise discrete components and firmware elements from a number of different providers such as independent hardware vendors, original equipment manufacturers, independent BIOS (Basic Input/Output System) vendors, and others. Based on a number of factors, including but not limited to open platform designs, manufacturing costs, and security concerns, silicon manufacturers are, in some instances, increasingly integrating more discrete components from a variety of sources into the main silicon and/or firmware of a system platform.
A concern that may be raised by integrating discrete components and firmware elements from a number of different sources into a computer system is how to ensure a safe, reliable, and secure operation of the platform. In a number of computer architectures, an initialization and configuration of the computer system is performed by the BIOS during a pre-boot or initialization phase before an OS (operating system) is executed. In some instances, an undesired execution of code (e.g., malicious attacks) during the initialization phase may result in a compromise in the reliability, security, and other factors associated with the subsequent operation of the OS and the platform. Such platform compromises may include memory attacks (e.g., cache attacks and/or dedicated memory attacks), component configuration downgrade attacks, and denial of service (DoS) attacks. Accordingly, there exists a need to provide a mechanism to ensure platform silicon configuration integrity.